package com.flxz.user.domain.vo;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * 图表数据VO
 * 
 * @author flxz
 * @date 2024-01-15
 */
public class ChartDataVO
{
    /** 支出对比数据 */
    private ExpensePieData expensePie;

    /** 收入构成数据 */
    private IncomePieData incomePie;

    /** 支出分类柱状图数据 */
    private List<Map<String, Object>> expenseBar;

    /** 收入分类柱状图数据 */
    private List<Map<String, Object>> incomeBar;

    public static class ExpensePieData {
        /** 实际支出 */
        private BigDecimal actualExpense;
        /** 期望支出 */
        private BigDecimal expectedExpense;

        public BigDecimal getActualExpense() {
            return actualExpense;
        }

        public void setActualExpense(BigDecimal actualExpense) {
            this.actualExpense = actualExpense;
        }

        public BigDecimal getExpectedExpense() {
            return expectedExpense;
        }

        public void setExpectedExpense(BigDecimal expectedExpense) {
            this.expectedExpense = expectedExpense;
        }
    }

    public static class IncomePieData {
        /** 固定收入 */
        private BigDecimal fixedIncome;
        /** 其他收入 */
        private BigDecimal otherIncome;

        public BigDecimal getFixedIncome() {
            return fixedIncome;
        }

        public void setFixedIncome(BigDecimal fixedIncome) {
            this.fixedIncome = fixedIncome;
        }

        public BigDecimal getOtherIncome() {
            return otherIncome;
        }

        public void setOtherIncome(BigDecimal otherIncome) {
            this.otherIncome = otherIncome;
        }
    }

    public ExpensePieData getExpensePie() {
        return expensePie;
    }

    public void setExpensePie(ExpensePieData expensePie) {
        this.expensePie = expensePie;
    }

    public IncomePieData getIncomePie() {
        return incomePie;
    }

    public void setIncomePie(IncomePieData incomePie) {
        this.incomePie = incomePie;
    }

    public List<Map<String, Object>> getExpenseBar() {
        return expenseBar;
    }

    public void setExpenseBar(List<Map<String, Object>> expenseBar) {
        this.expenseBar = expenseBar;
    }

    public List<Map<String, Object>> getIncomeBar() {
        return incomeBar;
    }

    public void setIncomeBar(List<Map<String, Object>> incomeBar) {
        this.incomeBar = incomeBar;
    }
}
